package Utils;

import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Adriano
 */
public class Tabela {
    
    private final List<KeyTabela> tabela;
    
    public Tabela(){
        this.tabela = new ArrayList<>();
        initTabela();
    }
    
    public TipoOperador getValor(TipoProducao linha, TipoProducao coluna){
        for (KeyTabela key: this.tabela){
            if (key.isCelula(linha, coluna)){
                return key.getValor();
            }
        }
        return TipoOperador.ERRO;
    }
    
    private void initTabela(){
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VIRGULA),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.VIRGULA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.ELSE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.FUNCTION), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.INTEGER), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.PROCEDURE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.PROGRAM), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.TO), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TRACO_MAIOR),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR_IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.EXPRESSAO), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.IDENTIFIER), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MENOR),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IGUAL),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.FECHA_PARENTESE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.FECHA_PARENT_COLCHETE_PONTO_VIRGULA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.TRACO_MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.DOIS_PONTOS), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.DOIS_PONTOS_IGUAL), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.IGUAL), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.MAIOR_IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.DO), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.END), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.EXPRESSAO), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.IDENTIFIER), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.THEN), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.DIFERENTE));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.UNTIL), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.MAIOR),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.ABRE_PARENTESE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE),
                       new TermoGramatica(TipoProducao.VAR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_CONSTANTE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE_TYPE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.DOIS_PONTOS), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FECHA_COLCHETE),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.EXPRESSAO), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.IDENTIFIER), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ALFA),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BEGIN),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BLOCO),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BOOLEAN),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.CHAR),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.CLAUSULA_E),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.COMANDO),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.CONSTANTE),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DEF_CONST),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DEF_FUNC),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DEF_PARAMT),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DEF_PROC),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DEF_SUBPROG),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DEF_TYPE),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VAR),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DO),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.EXPRESSAO), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.IDENTIFIER), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.DOWNTO),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.ELSE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.EXPRESSAO), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.IDENTIFIER), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.END),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.EXPRESSAO),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FOR),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.FUNCTION),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IDENT_LIST),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IDENTIFIER),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.IF),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.INC),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.INTEGER),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.EXPRESSAO), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.IDENTIFIER), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LAMBDA),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MAIOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.LISTA_COMA),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PARAMT),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PARAMT_LIS),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROCEDURE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROGRAM),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETES_PARENTESE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.PROGRAMA),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAL),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.REAPEAT),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.SEQ_COMAND),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.SEQ_IDENT),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.THEN),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TO),
                       new TermoGramatica(TipoProducao.BARRA_EM_PE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TYPE),
                       new TermoGramatica(TipoProducao.PONTO_VIRGULA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.TYPE),
                       new TermoGramatica(TipoProducao.MAIOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.UNTIL),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.VAR),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.PARAMT_LIS), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.SEQ_IDENT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.WHILE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.MENOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.ABRE_COLCHETE), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.DEF_SUBPROG), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.DEF_TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.DEF_VAR), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.DOWNTO), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.FOR), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.IDENT_LIST), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.IF), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.INC), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.INTEGER), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.LAMBDA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.LISTA_COMA), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.PARAMT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.PROGRAM), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.PROGRAMA), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.REAL), 
                       TipoOperador.IGUAL));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.REAPEAT), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.SEQ_COMAND), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.TYPE), 
                       TipoOperador.MENOR));
       this.tabela.add(
               new KeyTabela(
                       new TermoGramatica(TipoProducao.BARRA_EM_PE),
                       new TermoGramatica(TipoProducao.WHILE), 
                       TipoOperador.IGUAL));
       
       
           }
    
    
}
